<?php
class financeiro{
	private $id;
	private $id_empresa;
	private $id_venda;
	private $dt_venc;
	private $parcela;
	private $valor;
	private $status;
	private $dt_pagamento;

	public function __construct(){
		$this->id = NULL;
		$this->id_empresa = NULL;
		$this->id_venda = NULL;
		$this->dt_venc = NULL;
		$this->parcela = NULL;
		$this->valor = NULL;
		$this->status = NULL;
		$this->dt_pagamento = NULL;
	}

	public function get_id(){
		return $this->id;
	}
	public function get_id_empresa(){
		return $this->id_empresa;
	}
	public function get_id_venda(){
		return $this->id_venda;
	}
	public function get_dt_venc(){
		return $this->dt_venc;
	}
	public function get_parcela(){
		return $this->parcela;
	}
	public function get_valor(){
		return $this->valor;
	}
	public function get_status(){
		return $this->status;
	}
	public function get_dt_pagamento(){
		return $this->dt_pagamento;
	}
	
	
	public function set_id($id){
		if($id != '' && valida::numero($id)){
                    $this->id = $id;
                    return 1;
		}else{
                    return 0;
                }
        }

	public function set_id_empresa($id_empresa){
		if($id_empresa != '' && valida::numero($id_empresa)){
                    $this->id_empresa = $id_empresa;
                    return 1;
		}else{
                    return 0;
                }
        }

	public function set_id_venda($id_venda){
		if($id_venda != '' && valida::numero($id_venda)){
                    $this->id_venda = $id_venda;
                    return 1;
		}else{
                    return 0;
                }
        }

	public function set_dt_venc($dt_venc){
                $dia = substr($dt_venc, 8, 2);
                $mes = substr($dt_venc, 5, 2);
                $ano = substr($dt_venc, 0, 4);
                
                if(!valida::numero($dia)){return 0;}
                if(!valida::numero($mes)){return 0;}
                if(!valida::numero($ano)){return 0;}
                
		if(valida::data($dia, $mes, $ano)){
                    $this->dt_venc = $ano."-".$mes."-".$dia;
                    return 1;
		}else{
                    return 0;
                }
        }

	public function set_parcela($parcela){
		if(valida::numero($parcela)){
                    $this->parcela = $parcela;
                    return 1;
		}else{
                    return 0;
                }
        }

	public function set_valor($valor){
		if($valor != '' && valida::float($valor)){
                    $this->valor = $valor;
                    return 1;
		}else{
                    return 0;
                }
        }

	public function set_status($status){
		if(valida::numero($status)){
                    $this->status = $status;
                    return 1;
		}else{
                    return 0;
                }
        }

	public function set_dt_pagamento($dt_pagamento){
                $dia = substr($dt_pagamento, 8, 2);
                $mes = substr($dt_pagamento, 5, 2);
                $ano = substr($dt_pagamento, 0, 4);
                
                if(!valida::numero($dia)){return 0;}
                if(!valida::numero($mes)){return 0;}
                if(!valida::numero($ano)){return 0;}
                
		if(valida::data($dia, $mes, $ano)){
                    $this->dt_pagamento = $ano."-".$mes."-".$dia;
                    return 1;
		}else{
                    return 0;
                }
        }

	
	
	public function salvar(){
            $id = NULL;

            $sql = "replace into sgm_financeiro(id, id_empresa, id_venda, dt_venc, parcela, valor, status, dt_pagamento) values('".$this->id."', '".$this->id_empresa."', '".$this->id_venda."', '".$this->dt_venc."', '".$this->parcela."', '".$this->valor."', '".$this->status."', '".$this->dt_pagamento."')";
            $texto = $sql;

            $db = new db(config::$driver);
            $con = $db->conecta();

            if($db->query($sql, $con)){
                if($this->id == NULL){
                    $sql_m = "select max(id) from sgm_financeiro where id_empresa = '".$this->id_empresa."'";
                    $res_m = $db->query($sql_m, $con);
                    $rid = $db->fetch_array($res_m);
                    $id = $rid[0];
                }else{
                    $id = $this->id;
                }
            }

            $db->close($con);
            
            if($this->id != NULL){
                $texto = "Alterar";
            }else{
                $texto = "Inserir";
            }
            $texto .= " Financeiro: ID = '".$this->id."', ID da venda = '".$this->id_venda."', Data de vencimento = '".$this->dt_venc."', Parcela = '".$this->parcela."', Valor = '".$this->valor."', Status = '".$this->status."'";
            $log = new log($_SESSION["sgm_id_empresa"], $_SESSION["sgm_usuario"], $texto);
            unset($log);
            
            return $id;
	}
        
	public function carregar($id){
		$sql = "select * from sgm_financeiro where id = '$id'";

		$db = new db(config::$driver);
 		$con = $db->conecta();
		$res = $db->query($sql, $con);
		$db->close($con);

		$sgm_financeiro = $db->fetch_array($res);

		$this->id = $sgm_financeiro["id"];
		$this->id_empresa = $sgm_financeiro["id_empresa"];
		$this->id_venda = $sgm_financeiro["id_venda"];
		$this->dt_venc = $sgm_financeiro["dt_venc"];
		$this->parcela = $sgm_financeiro["parcela"];
		$this->valor = $sgm_financeiro["valor"];
		$this->status = $sgm_financeiro["status"];
		$this->dt_pagamento = $sgm_financeiro["dt_pagamento"];
		
		return 1;
	}
}
?>
